package com.aizuda.boot.modules.system.entity.vo.department;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.List;

/**
 * 员工信息VO
 * @author system
 * @since 2024-01-01
 */
@Data
@Schema(description = "员工信息VO")
public class EmployeeVO {

    @Schema(description = "员工ID")
    private Long id;

    @Schema(description = "员工姓名")
    private String name;

    @Schema(description = "员工别名")
    private String aliasName;

    @Schema(description = "手机号")
    private String mobile;

    @Schema(description = "头像地址")
    private String avatar;

    @Schema(description = "性别；1：男，0：女  -1：其他")
    private Integer sex;

    @Schema(description = "邮箱")
    private String email;

    @Schema(description = "工作状态；1：在职，2：离职")
    private Integer workStatus;

    @Schema(description = "职位名称")
    private String position;

    @Schema(description = "登录token")
    private String token;

    @Schema(description = "部门信息列表")
    private List<DepartmentVO> departments;

    @Data
    @Schema(description = "部门信息VO")
    public static class DepartmentVO {
        
        @Schema(description = "部门ID")
        private Long id;

        @Schema(description = "部门名称")
        private String name;

        @Schema(description = "部门编码")
        private String code;

        @Schema(description = "是否是主部门")
        private Boolean isMainDepartment;

        @Schema(description = "是否是部门领导")
        private Boolean isLeader;
    }
} 